package com.durian.domain.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.durian.enums.OrderStatus;
import lombok.*;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 订单表  实体类
 *
 * @author Durian
 * @since 2023-11-23
 */
@Data
@Builder
@ToString
@AllArgsConstructor
@NoArgsConstructor
@TableName("obs_order")
public class ObsOrder implements Serializable {

    /**
     * 订单id
     */
    @TableId(value = "order_id")
    private Long orderId;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 订单号
     */
    @TableField(fill = FieldFill.INSERT)
    private String orderNumber;

    /**
     * 订单生成日期
     */
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime orderCreateTime;

    /**
     * 订单的总价
     */
    private Double orderPrice;

    /**
     * 订单状态(已完成：1，未完成：0，已支付：2，待支付：3)
     */
    private OrderStatus orderStatus;

    /**
     * 地址
     */
    private String address;

    /**
     * 详细地址
     */
    private String addressDetail;

    /**
     * 联系人
     */
    private String addressContact;

    /**
     * 手机号
     */
    private String addressPhone;

    /**
     * 逻辑删除(存在：0；删除：1)
     */
    @TableLogic
    @TableField(fill = FieldFill.INSERT)
    private Integer deleted;
}
